// babel.config.js
module.exports = api => {
  api.cache(true) // 启用配置缓存
  const presets = [
    // 浏览器兼容性处理
    [
      '@babel/preset-env',
      {
        targets: '> 0.25%, not dead', // 支持市场占有率超过 0.25% 的浏览器
        useBuiltIns: 'usage', // 按需加载 polyfill
        corejs: 3 // 指定 core-js 版本
      }
    ],
    // React JSX 支持
    [
      '@babel/preset-react',
      {
        runtime: 'automatic'
      }
    ],
    // TypeScript 支持
    '@babel/preset-typescript'
  ]
  const plugins = [
    // // 复用辅助代码，减少打包体积
    '@babel/plugin-transform-runtime'
    // // 开发环境热更新（可选）
    // process.env.NODE_ENV === 'development' && 'react-refresh/babel'
  ].filter(Boolean)
  return { presets, plugins }
}
